home *** CD-ROM | disk | FTP | other *** search
/ Gekikoh Dennoh Club 7 / Gekikoh Dennoh Club Vol. 7 (Japan).7z / Gekikoh Dennoh Club Vol. 7 (Japan) (Track 01).bin / games / otoko / source.lzh / FuncEnemy / lboss04v.c < prev    next >
C/C++ Source or Header  |  1999-06-14  |  1KB  |  71 lines

  1. /* 4面ボスのカバー (04V = 04 coVer) */
  2. #include <xsp2lib.h>
  3.  
  4. #include "../otoko.h"
  5. #include "../enemy.h"
  6. #include "../effect.h"
  7. #include "../priority.h"
  8. #include "../sound.h"
  9.  
  10. static short EnemyMoveLBoss04V (ENEMY *);
  11. static void EnemyTiniLBoss04V (ENEMY *);
  12.  
  13.  
  14. void EnemyInitLBoss04V (ENEMY * p)
  15. {
  16.     p->vx = 0;
  17.     p->vy = 0;
  18.     p->hit_px = p->hit_py = p->hit_sx = p->hit_sy = p->hit_cx = 0;
  19.     p->damage = 0;
  20.     p->flash = 0;
  21.     p->hp = 0;
  22.     p->pt = obj_lboss04 + 8;
  23.     p->work = 0;
  24.     p->func_enemy_move = EnemyMoveLBoss04V;
  25.     p->func_enemy_tini = EnemyTiniLBoss04V;
  26.  
  27.     p->info = PALET_LBOSS04 | PRIORITY_BOSS_PARTS;
  28. }
  29.  
  30.  
  31.  
  32. static short EnemyMoveLBoss04V (ENEMY * p)
  33. {
  34.     if ((p->child_kill) || (p->child_death))
  35.         return (-1);    /* 消去 */
  36.  
  37.     /* 速度を足して上位ワード(固定整数部)だけ取り出す */
  38.     p->x = (p->lx += p->vx) >> 16;
  39.     p->y = (p->ly += p->vy) >> 16;
  40.  
  41.     if (SHORT_VY < 2)
  42.         p->vy += 4096;
  43.     switch (p->work++) {
  44.     case 0:
  45.     case 8 + 15 * 1:
  46.     case 8 + 15 * 2:
  47.         EffectInit (EFFECT_EXPL, 0, p->x, p->y);
  48.         SoundSetSE (SE_EXPL);    /* 爆発音を鳴らす */
  49.         break;
  50.     case 8 + 15 * 4:
  51.         EffectInit (EFFECT_EXPL, 0, p->x, p->y);
  52.         SoundSetSE (SE_EXPL_M);    /* 爆発音を鳴らす */
  53.         if (p->arg == 0)
  54.             EffectInit (EFFECT_POINTS_RED, POINTS_30000, p->x, p->y);
  55.         if (disp_level == DISP_LEVEL_HIGH)
  56.             EffectInit (EFFECT_HAHENMINI, 0, p->x, p->y);
  57.         p->child_death = !0;    /* 消去準備 */
  58.         break;
  59.     }
  60.     xobj_set_st (p);
  61.  
  62.  
  63.     return (0);
  64. }
  65.  
  66.  
  67.  
  68. static void EnemyTiniLBoss04V (ENEMY * p)
  69. {
  70. }
  71.